Build Structure

This section describes the Java-specific fields in the Build Structure > Java tab in some detail. Depending on your project structure and/or whether or not you want to accept the defaults, some of the entries may simply allow customized enhancements. Others will be necessary, again depending on your project structure. Note that you can use environment variables in all fields.

- For more information on the class path concept as used by SNiFF+, please refer also to Class Path.

- Class Path to Libraries.
This setting is used to provide a list of absolute paths to library byte-code, zip or jar files used in you project, if there is no source code available for them.
However, if the source code is available for the libraries, as is the case for the JDK library, it is best to create SNiFF+ Projects for them and then add these as subprojects. There is then no need to enter anything in the Classpath field for these projects.
The advantage of creating and adding subprojects is that you can then also correctly browse inheritance relationships and cross-references etc.
You can also enter the class path to external source code packages that you have not added to your SNiFF+ project as subprojects. This will allow correct compilation, but you will not see any symbol information.
This applies also to libraries where no sources are available; SNiFF+ will recognize the data types in such files, but not the symbol names.
If you use RMI (see also Java IDL, JNI and RMI), you have to enter the path to the JDK class files (JDK 1.1.x:

classes.zip ; JDK 1.2: rt.jar) either in this field or in the system CLASSPATH environment variable.
- Class Path to Source Package Root field.
This setting is the class path as you would enter it after -classpath . You can specify this relative to the current project or, in the case of an absolute project, as an absolute path.
The class path to the Source Package Root ends where the package begins. That is, it is always one directory level higher than the highest-level directory containing code in named packages. Bear this in mind especially also during Project Setup. Once the project has been set up, this can be set relative to the project, as seen from the package (e.g. .. or ../.. etc.)
If you specify the class path to the Source Package Root for a root project, it is generated correctly for all sub-projects. For subsequent modifications, it is easiest to checkmark all projects in the Project Editor and to choose Project > Attributes of Checkmarked Projects. Then press the Generate button to the right of the field.
- Class Path to Byte-Code Package Root field.
By default, byte-code is generated to the same directories as the source code. If you prefer to keep your source and byte-code separately, enter a root directory (relative or absolute) where you would like your byte-code packages to start, then press the Generate button. SNiFF+ will create the specified directory, and recreate the package structure. Byte-code will be generated to this directory when you build your project.
If you simply enter a name for a directory, it will be created in the current project directory.